Program RFEM 6 pro statické výpočty tvoří základ modulárního softwarového systému. Hlavní program RFEM 6 slouží k zadávání konstrukcí, materiálů a zatížení u rovinných i prostorových konstrukčních systémů, které se skládají z desek, stěn, skořepin a prutů. Program umožňuje vytvářet smíšené konstrukce, stejně jako modelovat tělesa a kontaktní prvky.
RSTAB 9 je výkonný program pro analýzu 3D prutových konstrukcí, který statikům pomáhá vyhovět požadavkům moderního stavebního inženýrství a odráží nejnovější trendy v oboru.
Jste často příliš dlouho zaměstnáni výpočtem průřezů? Software Dlubal a samostatný program RSECTION vám usnadní práci stanovením a analýzou napětí pro různé průřezy.
Víte vždy, odkud vítr vane? Ve směru inovace, samozřejmě! S RWIND 2 máte k dispozici program, který využívá digitální větrný tunel pro numerickou simulaci proudění větru. Program toto proudění aplikuje na libovolné geometrie budov a stanoví zatížení větrem působící na jejich povrch.
Hledáte přehled oblastí zatížení sněhem, větrem a zemětřesením? Pak jste zde správně. Mapy oblastí zatížení umožňují rychle a snadno stanovit oblasti zatížení sněhem, větrem a zemětřesením podle Eurokódu a dalších mezinárodních norem.
Chcete si vyzkoušet sílu programů Dlubal? Je to vaše příležitost! S bezplatnou 90denní plnou verzí si můžete všechny naše programy plně otestovat.
Parametry výpočtu zatěžovacího stavu není možné zadat při jeho vytvoření, ale až následně přes rozhraní existujícího zatěžovacího stavu. Pro získání rozhraní zatěžovacího stavu je třeba nejdříve získat rozhraní 'IModel' a 'ILoads':
Sub test_analysis_parameters()Dim iApp As RFEM5.ApplicationSet iApp = GetObject(, "RFEM5.Application")iApp.LockLicenseDim iMod As RFEM5.IModel3Set iMod = iApp.GetActiveModelOn Error GoTo e' get interface of loadsDim iLds As RFEM5.iLoadsSet iLds = iMod.GetLoads' get interface of load caseDim iLc As RFEM5.ILoadCaseSet iLc = iLds.GetLoadCase(1, AtNo)' get analysis parametersDim param_analy As RFEM5.AnalysisParametersparam_analy = iLc.GetAnalysisParameters' change analysis parametersparam_analy.Method = Postcriticalparam_analy.ModifyLoadingByFactor = Trueparam_analy.LoadingFactor = 1.5' ...' set new analysis parametersiLds.PrepareModificationiLc.SetAnalysisParameters param_analyiLds.FinishModificatione:If Err.Number <> 0 Then MsgBox Err.description, vbCritical, Err.SourceiMod.GetApplication.UnlockLicenseSet iMod = NothingEnd Sub
Pomocí 'ILoads.GetLoadcase' lze získat rozhraní pro určitý zatěžovací stav. Toto rozhraní poskytuje funkce 'GetAnalysisParameters' a 'SetAnalysisparameters', pomocí nichž lze parametry číst a zapisovat.
Stejný postup lze použít i pro kombinace zatížení.
Předávání faktorů pro účinné délky se provádí pomocí rozhraní pro prut (IMember), jmenuje se SetEffectiveLengths(). Pomocí GetEffectiveLengths() je možné načíst data:
// get interface to running RFEM application.iApp = Marshal.GetActiveObject("RFEM5.Application") as IApplication;iApp.LockLicense();// get interface to active RFEM model.iModel = iApp.GetActiveModel();// get interface to model data.IModelData2 iModData = iModel.GetModelData() as IModelData2;// get interface to member 1IMember iMem = iModData.GetMember(1, ItemAt.AtNo);MemberEffectiveLengths memEffLen = iMem.GetEffectiveLengths();memEffLen.No = 1;memEffLen.CheckBucklingLoad = true;memEffLen.Enabled = true;memEffLen.FactorU = 1.1;memEffLen.FactorV = 1.2;memEffLen.FactorY = 1.3;memEffLen.FactorZ = 1.4;// set new effective lengths dataiModData.PrepareModification();iMem.SetEffectiveLengths(memEffLen);iModData.FinishModification();
Je třeba vzít do úvahy, že vlastnosti pro účinné délky (např. EffectiveLengthY) konstrukce MembersEffectiveLengths a vlastnost CriticalBucklingLoad je možné pouze načíst.
Sub test_section()' get interface from the opened model and lock the licence/program Dim iModel As RFEM5.IModel3 Set iModel = GetObject(, "RFEM5.Model") iModel.GetApplication.LockLicense On Error GoTo E Dim iSecs As RFEM5.ISections Set iSecs = iModel.GetSections()
' first delete all sections iSecs.PrepareModification iSecs.DeleteObjects ("All") iSecs.FinishModification ' set section on solid Dim sec As RFEM5.Section sec.EdgePointA.X = 2 sec.EdgePointA.Y = 5 sec.EdgePointA.Z = 0 sec.EdgePointB.X = 2 sec.EdgePointB.Y = 8 sec.EdgePointB.Z = 0 sec.no = 1 sec.Name = "solid section" sec.Plane = GlobalPlaneInPositiveX sec.ShowValuesInIsolines = False sec.Type = SectionOnSolidSectionLine sec.ObjectList = "1" iSecs.PrepareModification iSecs.SetSection sec iSecs.FinishModification
' set section on surface sec.EdgePointA.X = 2 sec.EdgePointA.Y = 0 sec.EdgePointA.Z = 0 sec.EdgePointB.X = 2 sec.EdgePointB.Y = 3 sec.EdgePointB.Z = 0 sec.no = 2 sec.Name = "surface section" sec.Plane = GlobalPlaneInPositiveX sec.ShowValuesInIsolines = True sec.Type = SectionViaSurfacePlane sec.ObjectList = "1" sec.Vector.X = 0 sec.Vector.Y = 0 sec.Vector.Z = 1 iSecs.PrepareModification iSecs.SetSection sec iSecs.FinishModification
' get results Dim iCalc As ICalculation2 Set iCalc = iModel.GetCalculation Dim iRes As IResults2 Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1) Dim secRes() As RFEM5.SectionResult secRes = iRes.GetResultsInSection(2, AtNo, ShearForceVy,ContinuousDistributionWithinObjects, False)
' get model interface Set iApp = iModel.GetApplication() iApp.LockLicense ' get calculation interface Dim iCalc As RFEM5.ICalculation2 Set iCalc = iModel.GetCalculation ' get surface bending theory Dim calc_bend As RFEM5.BendingTheoryType calc_bend = iCalc.GetBendingTheory ' get settings for nonlinearities Dim calc_nl As RFEM5.CalculationNonlinearities calc_nl = iCalc.GetNonlinearities ' get precision and tolerance settings Dim calc_prec As RFEM5.PrecisionAndTolerance calc_prec = iCalc.GetPrecisionAndTolerance ' get calculation settings Dim calc_sets As RFEM5.CalculationSettings calc_sets = iCalc.GetSettings ' get calculation options Dim calc_opts As RFEM5.CalculationOptions calc_opts = iCalc.GetOptions ' set ShearStiffness to false calc_opts.ShearStiffness = False iCalc.SetOptions calc_opts